package jp.co.jalinfotec.sxt.common;

import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;

/**
 * システム設定情報を扱うための機能を提供します
 */
public class ConfigurationManager {

	/** システム設定ファイル名 */
	private static final String SYSTEM_CONFIG_FILE_NAME = "SystemConfig.properties";

	/** プロパティオブジェクト */
	private static Properties _prop = new Properties();

	/**
	 * プロパティオブジェクトをLoadするための初期化処理を行います
	 */
	static {
		// プロパティファイルへのストリーム
		InputStream inStream = null;

		try {
			// 設定ファイルの読み込み
			inStream = ConfigurationManager.class.getClassLoader().getResourceAsStream(SYSTEM_CONFIG_FILE_NAME);
			_prop.load(inStream);
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			// プロパティファイルへのストリームを閉じる
			try {
				if (inStream != null)
					inStream.close();
			} catch (Exception e2) {
				e2.printStackTrace();
			}
		}
	}

	/**
	 * システム設定情報を取得する
	 * @param key 設定のキー
	 * @return キーに紐づいた設定情報
	 */
	public static String getValue(String key)	{
		return _prop.getProperty(key);
	}
}
